package com.nisco.dms.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

import com.nisco.dms.entity.Permission;
import com.nisco.dms.entity.RolePermission;
import com.nisco.dms.repository.PermissionDao;
import com.nisco.dms.repository.RolePermissionDao;
import com.nisco.dms.util.dwz.Page;
import com.nisco.dms.util.dwz.PageUtils;

@Component
@Transactional(readOnly=true)
public class RolePermissionService extends BaseService<RolePermission, String> 
{
	@Autowired
	private RolePermissionDao rolePermissionDao;

	/**
	 * 必须提供空的构造函数以便spring实例化
	 */
	public RolePermissionService()
	{
	}

	/**
	 * 
	 * @param permissionDao
	 */
	@Autowired
	public RolePermissionService(RolePermissionDao rolePermissionDao)
	{
		super((JpaRepository<RolePermission, String>)rolePermissionDao);
		this.rolePermissionDao = rolePermissionDao;
	}
	
	/**
	 * 根据角色id删除角色权限表
	 * @param roleId
	 * @author Robin 2013-4-26 上午10:37:38
	 */
	public void deleRolePermissionByRoleId(String roleId,String strPermission){
		rolePermissionDao.deleRolePermissionByRoleId(roleId,strPermission);
	}

	/**
	 * 根据角色id及权限说明查找角色权限表
	 * @param roleId
	 * @param strPermission
	 * @return
	 * @author Robin 2013-4-26 上午10:47:21
	 */
	public RolePermission findByRoleIdAndStrPermission(String roleId,String strPermission){
		return rolePermissionDao.findByRoleIdAndStrPermission(roleId, strPermission);
	}
	
	public List<RolePermission> findByRoleId(String roleId){
		return rolePermissionDao.findByRoleId(roleId);
	}
}
